package com.wpx.log.core.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import com.wpx.log.core.handler.ILogHandler;
import com.wpx.log.core.handler.field.equals.IFieldEqualsPolicy;
import com.wpx.log.core.handler.field.equals.VoidFieldEqualsPolicy;
import com.wpx.log.core.handler.field.render.IFieldRenderPolicy;
import com.wpx.log.core.handler.field.render.VoidFieldRenderPolicy;

/**
 * 	属性
 * @author 韦鹏香
 * @date 2021/05/02
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface OpLogField {
	
	String value();
	
	Class<? extends IFieldEqualsPolicy> equalsPolicy() default VoidFieldEqualsPolicy.class;
	
	Class<? extends IFieldRenderPolicy> renderPolicy() default VoidFieldRenderPolicy.class;
	
	String map() default "";
	
	String format() default "YYYY-MM-dd HH:mm:ss";
}
